package com.mxgraph.examples.swing.editor;

import javax.swing.Action;
import javax.swing.JMenu;
import javax.swing.JPopupMenu;
import javax.swing.TransferHandler;

//import com.mxgraph.examples.swing.deviceProperties;
import com.mxgraph.examples.swing.editor.EditorActions.HistoryAction;
import com.mxgraph.examples.swing.editor.EditorActions.*;
import com.mxgraph.swing.util.mxGraphActions;
import com.mxgraph.util.mxResources;

public class EditorPopupMenu extends JPopupMenu
{

	/**
	 * 
	 */
	private static final long serialVersionUID = -3132749140550242191L;

	public EditorPopupMenu(BasicGraphEditor editor)
	{
		boolean selected = !editor.getGraphComponent().getGraph()
				.isSelectionEmpty();

		//add(editor.bind(mxResources.get("undo"), new HistoryAction(true),
		//		"/com/mxgraph/examples/swing/images/undo.gif"));

		//addSeparator();

		//add(
		//		editor.bind(mxResources.get("cut"), TransferHandler
		//				.getCutAction(),
		//				"/com/mxgraph/examples/swing/images/cut.gif"))
		//		.setEnabled(selected);
		//add(
		//		editor.bind(mxResources.get("copy"), TransferHandler
		//				.getCopyAction(),
		//				"/com/mxgraph/examples/swing/images/copy.gif"))
		//		.setEnabled(selected);
		//add(editor.bind(mxResources.get("paste"), TransferHandler
		//		.getPasteAction(),
		//		"/com/mxgraph/examples/swing/images/paste.gif"));

		//addSeparator();

		add(
				editor.bind(mxResources.get("delete"), mxGraphActions
						.getDeleteAction(),
						"/com/mxgraph/examples/swing/images/delete.gif"))
				.setEnabled(selected);

		addSeparator();

		// Creates the format menu
		//JMenu menu = (JMenu) add(new JMenu(mxResources.get("format")));

		//EditorMenuBar.populateFormatMenu(menu, editor);

		// Creates the shape menu
		//menu = (JMenu) add(new JMenu(mxResources.get("shape")));

		//EditorMenuBar.populateShapeMenu(menu, editor);

		//addSeparator();

		//add(
			//	editor.bind(mxResources.get("edit"), mxGraphActions
		//				.getEditAction())).setEnabled(selected);

		//addSeparator();

		//add(editor.bind(mxResources.get("selectVertices"), mxGraphActions
		//		.getSelectVerticesAction()));
		//add(editor.bind(mxResources.get("selectEdges"), mxGraphActions
		//		.getSelectEdgesAction()));

		//addSeparator();

		add(editor.bind(mxResources.get("selectAll"), mxGraphActions
				.getSelectAllAction()));
		addSeparator();
		add(editor.bind(mxResources.get("ping"),  new pingAction()));
		add(editor.bind(mxResources.get("telnet"),  new telnetAction()));
		add(editor.bind(mxResources.get("ssh"),  new sshAction()));
		addSeparator();
		add(editor.bind(mxResources.get("deviceProperties"), new deviceProperties()));
		addSeparator();

		
	}

}
